package com.ruoyi.delivery.service;

import com.ruoyi.delivery.domain.DelTransportDetail;

import java.util.List;

public interface IDelTransportDetailService {

    /**
     * 根据 trackingNumber 获取所有运单明细
     * @param trackingNumber 运单号
     * @return 运单明细列表
     */
    List<DelTransportDetail> getDetailsByTrackingNumber(String trackingNumber);

    List<DelTransportDetail> getDetailsByOrderNumber(String orderNumber);

    /**
     * 插入运单明细
     * @param detail 运单明细对象
     * @return 影响的行数
     */
    int insertTransportDetail(DelTransportDetail detail);

    /**
     * 删除运单明细
     * @param transportDetailId 运单明细编号
     * @return 影响的行数
     */
    int deleteTransportDetail(String transportDetailId);

    /**
     * 修改运单明细
     * @param detail 运单明细对象
     * @return 影响的行数
     */
    int updateTransportDetail(DelTransportDetail detail);

    /**
     * 筛选运单明细
     * @param trackingNumber 运单号
     * @param productName 商品名称
     * @param orderNumber 订单号
     * @param productBatch 商品批次
     * @return 符合条件的运单明细列表
     */
    List<DelTransportDetail> searchTransportDetails (
            String trackingNumber,
            String productName,
            String orderNumber,
            String productBatch);
}
